package com.gentlemancredit.app;

import android.app.Application;
import android.content.Context;
import android.content.Intent;
import android.os.Bundle;

import com.gentlemancredit.app.utils.Utils;

public class AppContext extends Application {

   private static AppContext appContext;

    @Override
    public void onCreate() {
        super.onCreate();
        appContext = this;
        //工具类初始化
        Utils.init(this);
    }

    public static AppContext getInstance() {
        return appContext;
    }


    /**
     * 打开activity ，默认方式打开。
     *
     * @param context
     * @param pClass
     * @param pBundle
     */
    public static void openActivity(Context context, Class<?> pClass, Bundle pBundle) {
        if (context == null) {
            context = AppContext.getInstance();
        }

        Intent intent = new Intent(context, pClass);
        intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
        if (pBundle != null) {
            intent.putExtras(pBundle);
        }
        context.startActivity(intent);
    }

    /**
     * 打开activity ，FLAG_ACTIVITY_NEW_TASK 模式
     *
     * @param context
     */
    public static void openActivityNotClose(Context context, Class<?> pClass) {
        openDefaultActivityNotClose(context, pClass, null);
    }

    /**
     * 打开activity ;附带 Bundle 数据
     *
     * @param context
     */
    public static void openDefaultActivityNotClose(Context context, Class<?> pClass, Bundle pBundle) {
        if (context == null) {
            context = AppContext.getInstance();
        }

        Intent intent = new Intent(context, pClass);
        intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
        if (pBundle != null) {
            intent.putExtras(pBundle);
        }
        context.startActivity(intent);
    }
}
